home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 January: Mac OS SDK / Dev.CD Jan 97 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / ODFDev / ODF / Found / FWString / SLStrRun.cpp < prev    next >
Encoding:
Text File  |  1996-09-17  |  3.1 KB  |  119 lines  |  [TEXT/MPS ]

  1. //========================================================================================
  2. //
  3. //    File:                SLStrRun.cpp
  4. //    Release Version:    $ ODF 2 $
  5. //
  6. //    Copyright:    (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
  7. //
  8. //========================================================================================
  9.  
  10.  
  11. /*
  12.  *  This file was generated by the SOM Compiler.
  13.  *  Generated using: 
  14.  *      SOM Emitter emitxtm.dll: 2.33
  15.  */
  16.  
  17. #include "FWFound.hpp"
  18.  
  19. #ifndef SLSTRREP_H
  20. #include "SLStrRep.h"
  21. #endif
  22.  
  23. #ifndef SOM_Module_ODFStringSubsystem_defined
  24. #include "FWTxtTyp.xh"
  25. #endif
  26.  
  27. #ifndef FWDEBUG_H
  28. #include "FWDebug.h"
  29. #endif
  30.  
  31. #ifndef FWSTRING_H
  32. #include "FWString.h"
  33. #endif
  34.  
  35. #ifndef PRSTRREP_H
  36. #include "PRStrRep.h"
  37. #endif
  38.  
  39. #define FW_OStringRunWriter_Class_Source
  40. #include "SLStrRun.xih"
  41.  
  42. #ifdef FW_BUILD_WIN
  43. #define corbastring string
  44. #endif
  45.  
  46. #ifdef FW_BUILD_MAC
  47. #pragma segment Strings
  48. #endif
  49.  
  50. SOM_Scope FW_OStringRunWriter*  SOMLINK FW_OStringRunWriter__Initialize(FW_OStringRunWriter *somSelf, Environment *ev,
  51.         FW_HString theString,
  52.         short bufferSize)
  53. {
  54.     FW_SOM_TRY
  55.     {
  56.         FW_OStringRunWriterData *somThis = FW_OStringRunWriterGetData(somSelf);
  57.         
  58.         FW_ASSERT(theString->fLocked);
  59.         somThis->fString = theString;
  60.         FW_PrivString_Acquire(somThis->fString);
  61.         somThis->fBufferSize = bufferSize;
  62.         somThis->fBuffer = new char[bufferSize];
  63.     }
  64.     FW_SOM_CATCH
  65.     return somSelf;
  66. }
  67.  
  68. SOM_Scope void  SOMLINK FW_OStringRunWriter__somInit(FW_OStringRunWriter *somSelf)
  69. {
  70.     FW_OStringRunWriterData *somThis = FW_OStringRunWriterGetData(somSelf);
  71.     somThis->fBufferSize = 0;
  72.     somThis->fBuffer = 0;
  73. //    FW_OStringRunWriter_parent_FW_OTextRunWriter_somInit(somSelf);
  74. }
  75.  
  76. SOM_Scope void  SOMLINK FW_OStringRunWriter__somUninit(FW_OStringRunWriter *somSelf)
  77. {
  78.     FW_OStringRunWriterData *somThis = FW_OStringRunWriterGetData(somSelf);
  79.     delete [] somThis->fBuffer;
  80.     FW_PrivString_Release(somThis->fString);
  81. //    FW_OStringRunWriter_parent_FW_OTextRunWriter_somUninit(somSelf);
  82. }
  83.  
  84. SOM_Scope corbastring  SOMLINK FW_OStringRunWriter__GetCurrentRun(FW_OStringRunWriter *somSelf, Environment *ev,
  85.         FW_ByteCount* length)
  86. {
  87. FW_UNUSED(ev);
  88.     FW_OStringRunWriterData *somThis = FW_OStringRunWriterGetData(somSelf);
  89.     *length = somThis->fBufferSize;
  90.     return somThis->fBuffer;
  91. }
  92.  
  93. SOM_Scope void  SOMLINK FW_OStringRunWriter__FlushRun(FW_OStringRunWriter *somSelf, Environment *ev,
  94.         corbastring buffer,
  95.         FW_ByteCount bytesToFlush)
  96. {
  97.     FW_PlatformError error;
  98.     FW_OStringRunWriterData *somThis = FW_OStringRunWriterGetData(somSelf);
  99.     FW_SPrivStringRep* rep = FW_PrivString_AppendBytes(somThis->fString, buffer, bytesToFlush, &error);
  100.     FW_ASSERT(somThis->fString == rep);
  101.     FW_SetEvError(ev, error);
  102. }
  103.  
  104. SOM_Scope boolean  SOMLINK FW_OStringRunWriter__NewRun(FW_OStringRunWriter *somSelf, Environment *ev, FW_Locale* locale)
  105. {
  106. FW_UNUSED(somSelf);
  107. FW_UNUSED(ev);
  108. FW_UNUSED(locale);
  109.     return false;
  110. }
  111.  
  112. SOM_Scope void  SOMLINK FW_OStringRunWriter__GetLocale(FW_OStringRunWriter* somSelf, Environment* ev,
  113.         FW_Locale* locale)
  114. {
  115. FW_UNUSED(ev);
  116.     FW_OStringRunWriterData* somThis = FW_OStringRunWriterGetData(somSelf);
  117.     FW_PrivString_GetLocale(somThis->fString, locale);    // may throw
  118. }
  119.